基于DSP的仿人機(jī)器人運(yùn)動(dòng)控制器設(shè)計(jì)
2014/2/24 15:37:32
傳統(tǒng)的機(jī)器人運(yùn)動(dòng)控制器大部分是以嵌入式單片機(jī)為核心的,但其運(yùn)算速度和處理能力遠(yuǎn)不能滿足機(jī)器人控制系統(tǒng)飛速發(fā)展的需要,日益成為阻礙機(jī)器人技術(shù)進(jìn)步的瓶頸。隨著以電子計(jì)算機(jī)和數(shù)字電子技術(shù)為代表的現(xiàn)代高技術(shù)的不斷發(fā)展,尤其是高速度數(shù)字信號(hào)處理器DSP 的出現(xiàn),從根本上解決了嵌入式系統(tǒng)運(yùn)算能力不足的問(wèn)題,并為機(jī)器人運(yùn)動(dòng)控制系統(tǒng)的改進(jìn)提供了新的途徑。該文正是從這一點(diǎn)出發(fā), 選用控制能力很強(qiáng)的DSP芯片TMS320LF2407A作為機(jī)器人運(yùn)動(dòng)控制器的主處理器,設(shè)計(jì)出一種高性能機(jī)器人運(yùn)動(dòng)控制器,顯著地提高了整個(gè)機(jī)器人的運(yùn)動(dòng)性能。
1 控制系統(tǒng)結(jié)構(gòu)
機(jī)器人的各種運(yùn)動(dòng)由各個(gè)關(guān)節(jié)軸系完成,機(jī)器人控制本質(zhì)上是對(duì)各關(guān)節(jié)軸系的控制。每個(gè)軸系具有一個(gè)自由度,可以完成某一方向的轉(zhuǎn)動(dòng)任務(wù),所有軸系同時(shí)協(xié)調(diào)運(yùn)動(dòng)就可以完成相對(duì)復(fù)雜的動(dòng)作。國(guó)防科技大學(xué)機(jī)電工程與自動(dòng)化學(xué)院機(jī)器人教研室最新研制的仿人步行機(jī)器人,其內(nèi)部各關(guān)節(jié)結(jié)構(gòu)如圖1所示。
圖1 機(jī)器人內(nèi)部結(jié)構(gòu)示意圖
此機(jī)器人共有36 個(gè)自由度,分布在下肢、上肢、頭部和手指等各關(guān)節(jié)。所有軸系均由PWM 脈沖信號(hào)驅(qū)動(dòng)控制,運(yùn)動(dòng)控制系統(tǒng)的任務(wù)就是對(duì)這些關(guān)節(jié)軸系進(jìn)行控制,具體由各底層控制器實(shí)現(xiàn)。整個(gè)控制系統(tǒng)采用分布式控制,在結(jié)構(gòu)上可分為3 個(gè)層次,如圖2 所示。
圖2 運(yùn)動(dòng)控制系統(tǒng)結(jié)構(gòu)框圖
1.1 主控計(jì)算機(jī)模塊
主控計(jì)算機(jī)就是控制系統(tǒng)的“大腦”和司令部,負(fù)責(zé)整個(gè)系統(tǒng)的在線運(yùn)動(dòng)規(guī)劃、動(dòng)作及運(yùn)動(dòng)控制、語(yǔ)音交互控制、視覺(jué)導(dǎo)引控制以及人機(jī)交互等功能。主控計(jì)算機(jī)要求體積小,運(yùn)算速度快,滿足機(jī)器人實(shí)時(shí)控制的要求,通常采用高性能小板工業(yè)控制計(jì)算機(jī)。它通過(guò)CAN 總線接口卡連接到通信總線上,與各底層控制器相連并交互信息。
1.2 通信模塊
機(jī)器人控制的信息量大,對(duì)通信方面的要求很高,要保證各種信息在控制系統(tǒng)中及時(shí)準(zhǔn)確的傳輸,通信工具的選擇十分重要,該文選用當(dāng)前流行的CAN 總線作為通信標(biāo)準(zhǔn)。CAN (Controller Area Net-work) 總線是應(yīng)用最為廣泛的一種現(xiàn)場(chǎng)總線,也是目前為止惟一有國(guó)際標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線。相對(duì)于一般通信總線,它的數(shù)據(jù)通信具有突出的可靠性、實(shí)時(shí)性和靈活性,可以滿足文中的設(shè)計(jì)要求。具體連接方式為:主控計(jì)算機(jī)通過(guò)CAN 總線接口卡連接到總線上,各底層控制器通過(guò)總線收發(fā)器掛接到總線上。只要所有器件都遵守相同的通信協(xié)議,就可以穩(wěn)定可靠的進(jìn)行信息傳輸。
1.3 底層控制器模塊
控制器處于整個(gè)控制系統(tǒng)的最底層,主要用來(lái)控制各運(yùn)動(dòng)關(guān)節(jié)軸系的具體執(zhí)行過(guò)程。控制器接收主控計(jì)算機(jī)的控制命令對(duì)各關(guān)節(jié)執(zhí)行軸系進(jìn)行控制,同時(shí)把底層信息反饋給主控計(jì)算機(jī),實(shí)現(xiàn)大回路反饋,便于主控計(jì)算機(jī)協(xié)調(diào)規(guī)劃,統(tǒng)一管理??刂破魇钦麄€(gè)控制系統(tǒng)的核心,也是該文研究的重點(diǎn),它的性能直接關(guān)系到機(jī)器人運(yùn)動(dòng)能力。
2 控制器詳細(xì)設(shè)計(jì)
基于DSP 的控制器具體結(jié)構(gòu)如圖3 所示。整個(gè)控制器根據(jù)結(jié)構(gòu)和功能可分為3 部分:主處理器與外圍器件單元、反饋與執(zhí)行單元、通信單元,各部分如圖3 中虛線所示。
圖3 DSP 控制器結(jié)構(gòu)
2.1 主處理器與外圍器件單元
DSP主處理器是整個(gè)控制器的核心,其運(yùn)算速度、對(duì)信息的處理能力等直接影響控制器的性能。選用TI公司的TMS320LF2407A 芯片,它是TI 家族C2000系列中的高檔產(chǎn)品,集實(shí)時(shí)處理能力和控制器外設(shè)于一身,非常適用于工業(yè)控制。其主要特點(diǎn)有:
a.3.3 V電壓,功耗極低,且具有3 種低功耗模式。
b.內(nèi)部采用哈佛結(jié)構(gòu)體系,程序與數(shù)據(jù)存儲(chǔ)器分開(kāi),專用的程序總線和數(shù)據(jù)總線進(jìn)行訪問(wèn),取指和執(zhí)行可同時(shí)進(jìn)行,有效提高了存取速度。
c.流水線指令技術(shù),多條指令可同時(shí)進(jìn)行,平均每條指令大約只需一個(gè)指令周期,大大提高了指令執(zhí)行速度,指令周期可達(dá)ns級(jí),在40MHz 主頻下每條指令只需25ns。
d.專用硬件乘法器,運(yùn)算速度大大提高,運(yùn)算能力明顯增強(qiáng)。
e.地址和數(shù)據(jù)總線都是16位,片內(nèi)有高達(dá)32K的Flash程序存儲(chǔ)器,2.5K字的數(shù)據(jù)/ 程序RAM,544字雙端口RAM (DARAM) , 2K字的單端口RAM(SARAM) ,外部存儲(chǔ)器可擴(kuò)展64K字的程序存儲(chǔ)器空間、64K字的數(shù)據(jù)存儲(chǔ)器空間和64K字的I/O空間。
f.自帶看門狗定時(shí)器、串行通信接口(SCI) 模塊、16 位串行外設(shè)接口( SPI) 模塊、SCI/ SPI 引導(dǎo)ROM、16 通道的10 位ADC 轉(zhuǎn)換器、5 個(gè)外部中斷、基于鎖相環(huán)(PLL) 的時(shí)鐘發(fā)生器、41個(gè)可單獨(dú)編程或復(fù)用的通用輸入/ 輸出(GPIO) 引腳。
g.2 個(gè)事件管理器模塊,每個(gè)事件管理器包括2個(gè)16位通用定時(shí)器、8個(gè)16位脈寬調(diào)制(PWM) 通道、可編程的PWM 死區(qū)控制、3個(gè)外部事件定時(shí)捕獲單元、片內(nèi)光電編碼器接口電路。
h.內(nèi)部帶有CAN2.0B 控制器模塊。
可以看出,TMS320LF2407A 的功能十分強(qiáng)大,其本身就是一個(gè)獨(dú)立的小型控制系統(tǒng),再加以適當(dāng)?shù)耐鈬骷?就可以實(shí)現(xiàn)更加復(fù)雜的控制功能。尤其是它的兩個(gè)事件管理器的功能非常強(qiáng)大,完全是為電機(jī)控制設(shè)計(jì)的。
TMS320LF2407A 通過(guò)位置傳感器實(shí)時(shí)監(jiān)控各關(guān)節(jié)軸系的運(yùn)行情況,并通過(guò)總線與主控計(jì)算機(jī)交互信息。利用其多個(gè)PWM 脈沖通道直接產(chǎn)生控制軸系需要的PWM 脈沖信號(hào);其CAN總線控制器模塊可以直接與主控計(jì)算機(jī)進(jìn)行通信而不需要增加CAN 總線控制器。
TMS320LF2407A 的軟件開(kāi)發(fā)也十分容易,可以反復(fù)編程。只要在其專用的集成開(kāi)發(fā)環(huán)境CCS(Code Composer Studio) 中編譯好程序,用一根下載線通過(guò)標(biāo)準(zhǔn)的JTAG接口就可以把程序燒錄到DSP 的程序存儲(chǔ)器中,還可以在線修改和調(diào)試。整個(gè)過(guò)程簡(jiǎn)單方便,只需一根下載線就可完成,大大簡(jiǎn)化了軟件的開(kāi)發(fā)過(guò)程,明顯提高了開(kāi)發(fā)效率。同時(shí)外部看門狗電路孩可以對(duì)控制器電壓進(jìn)行實(shí)時(shí)監(jiān)控,當(dāng)電壓出現(xiàn)異常迅速?gòu)?fù)位主處理器。外部存儲(chǔ)器中存放控制算法所需的必要參數(shù),通過(guò)SPI 串行外設(shè)接口與TMS320LF2407A 相連。
2.2 反饋與執(zhí)行單元
光電碼盤傳感器把軸系的位置信息轉(zhuǎn)換成兩路寬度相同但相位相差90°的脈沖信號(hào),脈沖的數(shù)目與軸系的轉(zhuǎn)角成正比,相位差的符號(hào)代表了軸系轉(zhuǎn)動(dòng)的方向。因此,通過(guò)對(duì)兩路脈沖進(jìn)行計(jì)數(shù)就可以得到軸系的實(shí)際位置。脈沖信號(hào)經(jīng)過(guò)光電隔離器件隔離后送入專用脈沖計(jì)數(shù)器,計(jì)數(shù)后的信息送入DSP主處理器。
這里沒(méi)有使用DSP 進(jìn)行計(jì)數(shù),一是為了節(jié)省DSP 的資源,使其可以把更多的時(shí)間用于計(jì)算和其他控制中去;二是可以提高控制器的靈活性,不用對(duì)主處理器進(jìn)行改動(dòng)就可以改變控制軸系的數(shù)目。脈沖計(jì)數(shù)器選用流行的CPLD 器件,其強(qiáng)大的功能對(duì)提高控制器的性能有很大的幫助,同時(shí)還可以作為譯碼電路的一部分為主處理器提供譯碼信號(hào)。主處理器對(duì)接收的軸系位置信息進(jìn)行計(jì)算和分析,結(jié)合新的控制命令產(chǎn)生相應(yīng)的PWM 脈沖控制信號(hào),經(jīng)過(guò)光電隔離和功率放大后送給執(zhí)行軸系控制軸系的運(yùn)行。
2.3 通信單元
主處理器通過(guò)CAN總線與主控計(jì)算機(jī)進(jìn)行通信,接收主控計(jì)算機(jī)的命令并把底層信息反饋給主控計(jì)算機(jī), 實(shí)現(xiàn)更高一級(jí)的反饋控制。DSP 通過(guò)CAN總線接收器連接到總線上,為提高抗干擾能力,中間需要進(jìn)行光電隔離。整個(gè)控制器的結(jié)構(gòu)并不復(fù)雜,硬件實(shí)現(xiàn)也很簡(jiǎn)單,但功能十分強(qiáng)大。每個(gè)控制器可以同時(shí)控制6~12個(gè)軸系,可以根據(jù)實(shí)際情況進(jìn)行調(diào)節(jié)。
3 控制流程與分析
整個(gè)控制系統(tǒng)的工作過(guò)程如圖4 所示。
圖4 控制系統(tǒng)流程
具體流程為:主控計(jì)算機(jī)離線規(guī)劃好數(shù)據(jù),系統(tǒng)開(kāi)始運(yùn)行并完成初始化工作;主控計(jì)算機(jī)向底層控制器發(fā)送控制命令,同時(shí)底層控制器對(duì)各執(zhí)行軸系進(jìn)行位置采樣,并把兩者結(jié)合在一起進(jìn)行分析,通過(guò)特定的控制算法生成相應(yīng)的PWM 控制信號(hào),經(jīng)功率放大后送執(zhí)行軸系,同時(shí)把底層軸系的運(yùn)行情況上傳給主控計(jì)算機(jī),主控計(jì)算機(jī)根據(jù)新的情況再產(chǎn)生新的命令發(fā)送給各控制器,如此反復(fù)。
期間還要不斷查詢是否有中斷產(chǎn)生,如果有中斷則轉(zhuǎn)而執(zhí)行相應(yīng)的中斷服務(wù)子程序,主要是用來(lái)處理一些異常情況;若有結(jié)束命令產(chǎn)生則結(jié)束整個(gè)運(yùn)動(dòng)過(guò)程。這事實(shí)上是兩個(gè)閉環(huán)反饋過(guò)程,底層控制器通過(guò)傳感器與各關(guān)節(jié)軸系之間進(jìn)行小循環(huán)反饋,主控計(jì)算機(jī)通過(guò)各控制器與各關(guān)節(jié)軸系之間進(jìn)行大回路反饋,這樣可以使機(jī)器人具有更多的“智能”,更好的進(jìn)行離線實(shí)時(shí)控制,這也是機(jī)器人朝智能化方向發(fā)展的一條重要途徑。
4 結(jié) 論
文中設(shè)計(jì)的控制器,采用DSP作為主處理器,較傳統(tǒng)的單片機(jī)性能有了顯著提高,運(yùn)算速度明顯增強(qiáng),控制能力得到大幅度提升,從根本上解決了使用單片機(jī)所帶來(lái)的各種問(wèn)題,并為機(jī)器人控制系統(tǒng)的發(fā)展和提升找到了一個(gè)新的方向。同時(shí)也希望能對(duì)研究機(jī)器人的同行們有一定啟示,在此基礎(chǔ)上研制出性能更高的產(chǎn)品,為推動(dòng)我國(guó)機(jī)器人事業(yè)的前進(jìn)做出更大的貢獻(xiàn)。
1 控制系統(tǒng)結(jié)構(gòu)
機(jī)器人的各種運(yùn)動(dòng)由各個(gè)關(guān)節(jié)軸系完成,機(jī)器人控制本質(zhì)上是對(duì)各關(guān)節(jié)軸系的控制。每個(gè)軸系具有一個(gè)自由度,可以完成某一方向的轉(zhuǎn)動(dòng)任務(wù),所有軸系同時(shí)協(xié)調(diào)運(yùn)動(dòng)就可以完成相對(duì)復(fù)雜的動(dòng)作。國(guó)防科技大學(xué)機(jī)電工程與自動(dòng)化學(xué)院機(jī)器人教研室最新研制的仿人步行機(jī)器人,其內(nèi)部各關(guān)節(jié)結(jié)構(gòu)如圖1所示。
圖1 機(jī)器人內(nèi)部結(jié)構(gòu)示意圖
此機(jī)器人共有36 個(gè)自由度,分布在下肢、上肢、頭部和手指等各關(guān)節(jié)。所有軸系均由PWM 脈沖信號(hào)驅(qū)動(dòng)控制,運(yùn)動(dòng)控制系統(tǒng)的任務(wù)就是對(duì)這些關(guān)節(jié)軸系進(jìn)行控制,具體由各底層控制器實(shí)現(xiàn)。整個(gè)控制系統(tǒng)采用分布式控制,在結(jié)構(gòu)上可分為3 個(gè)層次,如圖2 所示。
圖2 運(yùn)動(dòng)控制系統(tǒng)結(jié)構(gòu)框圖
1.1 主控計(jì)算機(jī)模塊
主控計(jì)算機(jī)就是控制系統(tǒng)的“大腦”和司令部,負(fù)責(zé)整個(gè)系統(tǒng)的在線運(yùn)動(dòng)規(guī)劃、動(dòng)作及運(yùn)動(dòng)控制、語(yǔ)音交互控制、視覺(jué)導(dǎo)引控制以及人機(jī)交互等功能。主控計(jì)算機(jī)要求體積小,運(yùn)算速度快,滿足機(jī)器人實(shí)時(shí)控制的要求,通常采用高性能小板工業(yè)控制計(jì)算機(jī)。它通過(guò)CAN 總線接口卡連接到通信總線上,與各底層控制器相連并交互信息。
1.2 通信模塊
機(jī)器人控制的信息量大,對(duì)通信方面的要求很高,要保證各種信息在控制系統(tǒng)中及時(shí)準(zhǔn)確的傳輸,通信工具的選擇十分重要,該文選用當(dāng)前流行的CAN 總線作為通信標(biāo)準(zhǔn)。CAN (Controller Area Net-work) 總線是應(yīng)用最為廣泛的一種現(xiàn)場(chǎng)總線,也是目前為止惟一有國(guó)際標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線。相對(duì)于一般通信總線,它的數(shù)據(jù)通信具有突出的可靠性、實(shí)時(shí)性和靈活性,可以滿足文中的設(shè)計(jì)要求。具體連接方式為:主控計(jì)算機(jī)通過(guò)CAN 總線接口卡連接到總線上,各底層控制器通過(guò)總線收發(fā)器掛接到總線上。只要所有器件都遵守相同的通信協(xié)議,就可以穩(wěn)定可靠的進(jìn)行信息傳輸。
1.3 底層控制器模塊
控制器處于整個(gè)控制系統(tǒng)的最底層,主要用來(lái)控制各運(yùn)動(dòng)關(guān)節(jié)軸系的具體執(zhí)行過(guò)程。控制器接收主控計(jì)算機(jī)的控制命令對(duì)各關(guān)節(jié)執(zhí)行軸系進(jìn)行控制,同時(shí)把底層信息反饋給主控計(jì)算機(jī),實(shí)現(xiàn)大回路反饋,便于主控計(jì)算機(jī)協(xié)調(diào)規(guī)劃,統(tǒng)一管理??刂破魇钦麄€(gè)控制系統(tǒng)的核心,也是該文研究的重點(diǎn),它的性能直接關(guān)系到機(jī)器人運(yùn)動(dòng)能力。
2 控制器詳細(xì)設(shè)計(jì)
基于DSP 的控制器具體結(jié)構(gòu)如圖3 所示。整個(gè)控制器根據(jù)結(jié)構(gòu)和功能可分為3 部分:主處理器與外圍器件單元、反饋與執(zhí)行單元、通信單元,各部分如圖3 中虛線所示。
圖3 DSP 控制器結(jié)構(gòu)
2.1 主處理器與外圍器件單元
DSP主處理器是整個(gè)控制器的核心,其運(yùn)算速度、對(duì)信息的處理能力等直接影響控制器的性能。選用TI公司的TMS320LF2407A 芯片,它是TI 家族C2000系列中的高檔產(chǎn)品,集實(shí)時(shí)處理能力和控制器外設(shè)于一身,非常適用于工業(yè)控制。其主要特點(diǎn)有:
a.3.3 V電壓,功耗極低,且具有3 種低功耗模式。
b.內(nèi)部采用哈佛結(jié)構(gòu)體系,程序與數(shù)據(jù)存儲(chǔ)器分開(kāi),專用的程序總線和數(shù)據(jù)總線進(jìn)行訪問(wèn),取指和執(zhí)行可同時(shí)進(jìn)行,有效提高了存取速度。
c.流水線指令技術(shù),多條指令可同時(shí)進(jìn)行,平均每條指令大約只需一個(gè)指令周期,大大提高了指令執(zhí)行速度,指令周期可達(dá)ns級(jí),在40MHz 主頻下每條指令只需25ns。
d.專用硬件乘法器,運(yùn)算速度大大提高,運(yùn)算能力明顯增強(qiáng)。
e.地址和數(shù)據(jù)總線都是16位,片內(nèi)有高達(dá)32K的Flash程序存儲(chǔ)器,2.5K字的數(shù)據(jù)/ 程序RAM,544字雙端口RAM (DARAM) , 2K字的單端口RAM(SARAM) ,外部存儲(chǔ)器可擴(kuò)展64K字的程序存儲(chǔ)器空間、64K字的數(shù)據(jù)存儲(chǔ)器空間和64K字的I/O空間。
f.自帶看門狗定時(shí)器、串行通信接口(SCI) 模塊、16 位串行外設(shè)接口( SPI) 模塊、SCI/ SPI 引導(dǎo)ROM、16 通道的10 位ADC 轉(zhuǎn)換器、5 個(gè)外部中斷、基于鎖相環(huán)(PLL) 的時(shí)鐘發(fā)生器、41個(gè)可單獨(dú)編程或復(fù)用的通用輸入/ 輸出(GPIO) 引腳。
g.2 個(gè)事件管理器模塊,每個(gè)事件管理器包括2個(gè)16位通用定時(shí)器、8個(gè)16位脈寬調(diào)制(PWM) 通道、可編程的PWM 死區(qū)控制、3個(gè)外部事件定時(shí)捕獲單元、片內(nèi)光電編碼器接口電路。
h.內(nèi)部帶有CAN2.0B 控制器模塊。
可以看出,TMS320LF2407A 的功能十分強(qiáng)大,其本身就是一個(gè)獨(dú)立的小型控制系統(tǒng),再加以適當(dāng)?shù)耐鈬骷?就可以實(shí)現(xiàn)更加復(fù)雜的控制功能。尤其是它的兩個(gè)事件管理器的功能非常強(qiáng)大,完全是為電機(jī)控制設(shè)計(jì)的。
TMS320LF2407A 通過(guò)位置傳感器實(shí)時(shí)監(jiān)控各關(guān)節(jié)軸系的運(yùn)行情況,并通過(guò)總線與主控計(jì)算機(jī)交互信息。利用其多個(gè)PWM 脈沖通道直接產(chǎn)生控制軸系需要的PWM 脈沖信號(hào);其CAN總線控制器模塊可以直接與主控計(jì)算機(jī)進(jìn)行通信而不需要增加CAN 總線控制器。
TMS320LF2407A 的軟件開(kāi)發(fā)也十分容易,可以反復(fù)編程。只要在其專用的集成開(kāi)發(fā)環(huán)境CCS(Code Composer Studio) 中編譯好程序,用一根下載線通過(guò)標(biāo)準(zhǔn)的JTAG接口就可以把程序燒錄到DSP 的程序存儲(chǔ)器中,還可以在線修改和調(diào)試。整個(gè)過(guò)程簡(jiǎn)單方便,只需一根下載線就可完成,大大簡(jiǎn)化了軟件的開(kāi)發(fā)過(guò)程,明顯提高了開(kāi)發(fā)效率。同時(shí)外部看門狗電路孩可以對(duì)控制器電壓進(jìn)行實(shí)時(shí)監(jiān)控,當(dāng)電壓出現(xiàn)異常迅速?gòu)?fù)位主處理器。外部存儲(chǔ)器中存放控制算法所需的必要參數(shù),通過(guò)SPI 串行外設(shè)接口與TMS320LF2407A 相連。
2.2 反饋與執(zhí)行單元
光電碼盤傳感器把軸系的位置信息轉(zhuǎn)換成兩路寬度相同但相位相差90°的脈沖信號(hào),脈沖的數(shù)目與軸系的轉(zhuǎn)角成正比,相位差的符號(hào)代表了軸系轉(zhuǎn)動(dòng)的方向。因此,通過(guò)對(duì)兩路脈沖進(jìn)行計(jì)數(shù)就可以得到軸系的實(shí)際位置。脈沖信號(hào)經(jīng)過(guò)光電隔離器件隔離后送入專用脈沖計(jì)數(shù)器,計(jì)數(shù)后的信息送入DSP主處理器。
這里沒(méi)有使用DSP 進(jìn)行計(jì)數(shù),一是為了節(jié)省DSP 的資源,使其可以把更多的時(shí)間用于計(jì)算和其他控制中去;二是可以提高控制器的靈活性,不用對(duì)主處理器進(jìn)行改動(dòng)就可以改變控制軸系的數(shù)目。脈沖計(jì)數(shù)器選用流行的CPLD 器件,其強(qiáng)大的功能對(duì)提高控制器的性能有很大的幫助,同時(shí)還可以作為譯碼電路的一部分為主處理器提供譯碼信號(hào)。主處理器對(duì)接收的軸系位置信息進(jìn)行計(jì)算和分析,結(jié)合新的控制命令產(chǎn)生相應(yīng)的PWM 脈沖控制信號(hào),經(jīng)過(guò)光電隔離和功率放大后送給執(zhí)行軸系控制軸系的運(yùn)行。
2.3 通信單元
主處理器通過(guò)CAN總線與主控計(jì)算機(jī)進(jìn)行通信,接收主控計(jì)算機(jī)的命令并把底層信息反饋給主控計(jì)算機(jī), 實(shí)現(xiàn)更高一級(jí)的反饋控制。DSP 通過(guò)CAN總線接收器連接到總線上,為提高抗干擾能力,中間需要進(jìn)行光電隔離。整個(gè)控制器的結(jié)構(gòu)并不復(fù)雜,硬件實(shí)現(xiàn)也很簡(jiǎn)單,但功能十分強(qiáng)大。每個(gè)控制器可以同時(shí)控制6~12個(gè)軸系,可以根據(jù)實(shí)際情況進(jìn)行調(diào)節(jié)。
3 控制流程與分析
整個(gè)控制系統(tǒng)的工作過(guò)程如圖4 所示。
圖4 控制系統(tǒng)流程
具體流程為:主控計(jì)算機(jī)離線規(guī)劃好數(shù)據(jù),系統(tǒng)開(kāi)始運(yùn)行并完成初始化工作;主控計(jì)算機(jī)向底層控制器發(fā)送控制命令,同時(shí)底層控制器對(duì)各執(zhí)行軸系進(jìn)行位置采樣,并把兩者結(jié)合在一起進(jìn)行分析,通過(guò)特定的控制算法生成相應(yīng)的PWM 控制信號(hào),經(jīng)功率放大后送執(zhí)行軸系,同時(shí)把底層軸系的運(yùn)行情況上傳給主控計(jì)算機(jī),主控計(jì)算機(jī)根據(jù)新的情況再產(chǎn)生新的命令發(fā)送給各控制器,如此反復(fù)。
期間還要不斷查詢是否有中斷產(chǎn)生,如果有中斷則轉(zhuǎn)而執(zhí)行相應(yīng)的中斷服務(wù)子程序,主要是用來(lái)處理一些異常情況;若有結(jié)束命令產(chǎn)生則結(jié)束整個(gè)運(yùn)動(dòng)過(guò)程。這事實(shí)上是兩個(gè)閉環(huán)反饋過(guò)程,底層控制器通過(guò)傳感器與各關(guān)節(jié)軸系之間進(jìn)行小循環(huán)反饋,主控計(jì)算機(jī)通過(guò)各控制器與各關(guān)節(jié)軸系之間進(jìn)行大回路反饋,這樣可以使機(jī)器人具有更多的“智能”,更好的進(jìn)行離線實(shí)時(shí)控制,這也是機(jī)器人朝智能化方向發(fā)展的一條重要途徑。
4 結(jié) 論
文中設(shè)計(jì)的控制器,采用DSP作為主處理器,較傳統(tǒng)的單片機(jī)性能有了顯著提高,運(yùn)算速度明顯增強(qiáng),控制能力得到大幅度提升,從根本上解決了使用單片機(jī)所帶來(lái)的各種問(wèn)題,并為機(jī)器人控制系統(tǒng)的發(fā)展和提升找到了一個(gè)新的方向。同時(shí)也希望能對(duì)研究機(jī)器人的同行們有一定啟示,在此基礎(chǔ)上研制出性能更高的產(chǎn)品,為推動(dòng)我國(guó)機(jī)器人事業(yè)的前進(jìn)做出更大的貢獻(xiàn)。
提交
查看更多評(píng)論
其他資訊
工業(yè)機(jī)器人控制系統(tǒng)的開(kāi)放體系結(jié)構(gòu)
工業(yè)機(jī)器人離線編程及無(wú)碰撞路徑規(guī)劃系統(tǒng)的開(kāi)發(fā)研究
工業(yè)機(jī)器人手臂結(jié)構(gòu)的有限元分析與研究
工業(yè)機(jī)器人通用控制器研究開(kāi)發(fā)
工業(yè)機(jī)器人網(wǎng)絡(luò)控制與編程